package com.youlai.boot.modules.game.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.youlai.boot.modules.game.model.entity.GameUserAchievement;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 用户成就Mapper接口
 *
 * @author 有来技术团队
 */
@Mapper
public interface GameUserAchievementMapper extends BaseMapper<GameUserAchievement> {

    /**
     * 查询用户已解锁的成就ID列表
     *
     * @param userId 用户ID
     * @return 成就ID列表
     */
    List<Long> getUserUnlockedAchievementIds(@Param("userId") Long userId);

    /**
     * 查询用户的成就数量
     *
     * @param userId 用户ID
     * @return 成就数量
     */
    int countUserAchievements(@Param("userId") Long userId);

    /**
     * 检查用户是否已解锁成就
     *
     * @param userId 用户ID
     * @param achievementId 成就ID
     * @return 记录数
     */
    int checkUserAchievementUnlocked(@Param("userId") Long userId, @Param("achievementId") Long achievementId);
} 